Data storage devices generally operate to store and retrieve data in a fast and efficient manner. Some storage devices utilize a semiconductor array of solid-state memory cells to store individual bits of data. Such memory cells can be volatile or non-volatile. Volatile memory cells generally retain data stored in memory only so long as operational power continues to be supplied to the device. Non-volatile memory cells generally retain data stored in memory even in the absence of the application of operational power. Non-volatile memory cells can take a variety of constructions, such as spin-torque transfer random access memory (STTRAM or STRAM), resistive random access memory (RRAM), magnetic random access memory (MRAM), etc.
In these and other types of data storage devices, the cells can be configured to have different electrical resistances to store different logical states. The resistance state of a particular cell can be detected during a read operation by applying a read current, sensing a voltage drop across the cell, and comparing the sensed voltage drop with a reference voltage.